<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>trafgen: xtrafgen_master_streaming_example.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">trafgen
   </div>
   <div id="projectbrief">Vitis Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Overview</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="globals.html"><span>APIs</span></a></li>
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="pages.html"><span>Examples</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('xtrafgen__master__streaming__example_8c.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">xtrafgen_master_streaming_example.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Overview</h2>
<div class="textblock"><p>This file demonstrates how to use the xtrafgen driver on the Xilinx AXI Traffic Generator core. </p>
<p>The AXI Traffic Generator IP is designed to generate AXI4 traffic which can be used to stress different modules/ interconnect connected in the system.</p>
<p>This example demonstrates how to use Streaming mode in Axi Traffic Genrator When Configured in Master only mode.In this mode the core generates Streaming Traffic based on the transfer length and transfer count configured. To test this example hardware Must contain a Streaming FIFO and the Connections To Axi TrafficGen needs to made As shown below </p>
<hr/>
<p> ____________ _________|AXI_STR_RXD | | | | | | | |_____| | | | axi_master| |________________| |____________|</p>
<p>Axi TrafficGen Axi Stream FIFO</p>
<pre>
 MODIFICATION HISTORY:</pre><pre> Ver   Who  Date     Changes
 ----- ---- -------- -------------------------------------------------------
 1.01a adk  03/09/13 First release
 2.00a adk  16/09/13 Fixed CR:737291
 2.01a adk  15/11/13 Fixed CR:760808
 4.1   ms   01/23/17 Modified xil_printf statement in main function to
                     ensure that "Successfully ran" and "Failed" strings
                     are available in all examples. This is a fix for
                     CR-965028.
       ms   04/05/17 Added tabspace for return statements in functions for
                     proper documentation while generating doxygen and also
                     modified filename tag to include the file in doxygen
                     examples.
 </pre><hr/>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a521d3269309f373eed23de244b585334"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xtrafgen__master__streaming__example_8c.html#a521d3269309f373eed23de244b585334">XTrafGenStremingModeMasterExample</a> (<a class="el" href="struct_x_traf_gen.html">XTrafGen</a> *InstancePtr, u16 DeviceId)</td></tr>
<tr class="memdesc:a521d3269309f373eed23de244b585334"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function demonstrates the usage Traffic Generator It does the following:  <a href="#a521d3269309f373eed23de244b585334">More...</a><br/></td></tr>
<tr class="separator:a521d3269309f373eed23de244b585334"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xtrafgen__master__streaming__example_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function.  <a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br/></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int main </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Main function. </p>
<p>This function is the main entry of the traffic generator test.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">None</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if tests pass</li>
</ul>
</dd></dl>
<ul>
<li>XST_FAILURE if fails.</li>
</ul>
<dl class="section note"><dt>Note</dt><dd>None. </dd></dl>

<p>References <a class="el" href="xtrafgen__master__streaming__example_8c.html#a521d3269309f373eed23de244b585334">XTrafGenStremingModeMasterExample()</a>.</p>

</div>
</div>
<a class="anchor" id="a521d3269309f373eed23de244b585334"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XTrafGenStremingModeMasterExample </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_traf_gen.html">XTrafGen</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u16&#160;</td>
          <td class="paramname"><em>DeviceId</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function demonstrates the usage Traffic Generator It does the following: </p>
<pre class="fragment">  - Set up the output terminal if UART16550 is in the hardware build
  - Initialize the AXI Traffic Generator device
  - Initialize the Streaming FIFO device
  - Set the Desired Transfer Count and Transfer Length
  - Enable the Traffic Generation on the Core
  - Check for the Streaming data on the FIFO 
  - Return test status and exit
</pre><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the instance of the <a class="el" href="struct_x_traf_gen.html" title="The XTrafGen driver instance data. ">XTrafGen</a> component. </td></tr>
    <tr><td class="paramname">DeviceId</td><td>is Device ID of the Axi Traffic Generator Device,</td></tr>
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the instance of the <a class="el" href="struct_x_traf_gen.html" title="The XTrafGen driver instance data. ">XTrafGen</a> component. </td></tr>
    <tr><td class="paramname">DeviceId</td><td>is Device ID of the Axi Traffic Generator Device, typically XPAR_&lt;TRAFGEN_instance&gt;_DEVICE_ID value from xparameters.h.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>-XST_SUCCESS to indicate success -XST_FAILURE to indicate failure </dd></dl>

<p>References <a class="el" href="struct_x_traf_gen___config.html#ac47f34b47fc9fb39c04ac7a57ac58d48">XTrafGen_Config::BaseAddress</a>, <a class="el" href="struct_x_traf_gen.html#af67f6122abede0916eb19b1fcbb33794">XTrafGen::OperatingMode</a>, <a class="el" href="group__trafgen.html#gaf22b2f8af4980fac9d5faaf3001ab0f0">XTG_MODE_STREAMING</a>, <a class="el" href="group__trafgen.html#ga4d40f6d5551836dab49e0d22e8d5e1eb">XTrafGen_CfgInitialize()</a>, <a class="el" href="group__trafgen.html#ga9628f47e6f85fc3dba9f55c4b28b2e69">XTrafGen_GetStreamingTransCnt</a>, <a class="el" href="group__trafgen.html#gaf17c0eadf5962f5dd8ba970b77dd12e6">XTrafGen_GetStreamingTransLen</a>, <a class="el" href="group__trafgen.html#gacbf906e378777e17e7d68729315993ec">XTrafGen_LookupConfig()</a>, <a class="el" href="group__trafgen.html#ga5481f14f30231fcf80dafa2b77f6e8a3">XTrafGen_ResetStreamingRandomLen</a>, <a class="el" href="group__trafgen.html#ga90d0e4161092c15a1ca821f97cdd7a4b">XTrafGen_SetStreamingTransCnt</a>, <a class="el" href="group__trafgen.html#gae7e5d3e4f6de43f247a5f52dbade8deb">XTrafGen_SetStreamingTransLen</a>, and <a class="el" href="group__trafgen.html#gaadc216c9d0077b5906e2b07029b8877a">XTrafGen_StreamEnable</a>.</p>

<p>Referenced by <a class="el" href="xtrafgen__master__streaming__example_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
	<p class="footer">&copy; Copyright 2015-2022 Xilinx, Inc. All Rights Reserved.</p>
	<p class="footer">&copy; Copyright 2022-2023 Advanced Micro Devices, Inc. All Rights Reserved.</p>
</div>
</body>
</html>
